package com.swapbytes.jrexportcmd;

/**
 * Tipos de datos utilizados en el proyecto para identificar cada uno de los
 * objeto que son llamados desde la linea de comandos hasta su destino final.
 * Con la intención de asociar una identificacion de los archivos a exportar,
 * tipo de datos primitivos y diversos manejadores de Base de Datos.
 *
 * @author Nicola Strappazzon C., nicola51980@gmail.com
 * @version 1.1.0
 */
public class Types {

  /**
   * Tipo de conector al manejador de base de datos en jdbc.
   */
  public enum Driver {
	MYSQL, PGSQL;

	public String toString() {
	  return this.name().toLowerCase();
	}
  }

  /**
   * Tipo de formato de los archivos a exportar.
   */
  public enum Format {
	PDF, XLS, DOCX;

	public String toString() {
	  return this.name().toLowerCase();
	}
  }

  /**
   * Tipo de datos primitivos que son utilizados para definir los parametros a
   * enviar al Reporte.
   */
  public enum Data {
	STRING, BOOLEAN, DOUBLE, INTEGER;

	public String toString() {
	  return this.name().toLowerCase();
	}
  }

  /**
   * Tipo de salida del stream.
   */
  public enum Stream {
	BIN, BASE64;

	public String toString() {
	  return this.name().toLowerCase();
	}
  }
}
